#pragma once
#include "DXAMLCommon.h"

class CDependencyObject;
class CDependencyProperty;

class CBaseValueStorage
{
private: 
	CDependencyObject * m_pdo;
	CDependencyProperty * m_pdp;
	enum BaseValueSource m_baseValueSource;
public: 
	CBaseValueStorage(CDependencyObject * pdo, CDependencyProperty * pdp, enum BaseValueSource baseValueSource);
	XBOOL AreEqual(const CDependencyObject * const & pdo, const CDependencyProperty * const & pdp);
	XBOOL TrySet(CDependencyObject * const & pdo, CDependencyProperty * const & pdp, enum BaseValueSource baseValueSource);
	enum BaseValueSource GetBaseValueSource();
	void Uninit();
};